home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / Sound.idl < prev    next >
Text File  |  1996-05-01  |  7KB  |  193 lines

  1. /*
  2.      File:        Sound.idl
  3.  
  4.      Contains:    Sound Manager Interfaces.
  5.  
  6.      Version:    Technology:    Sound Manager 3.1
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __SOUND_IDL__
  19. #define __SOUND_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __TYPES_IDL__
  25. #include <Types.idl>
  26. #endif
  27. #ifndef __COMPONENTS_IDL__
  28. #include <Components.idl>
  29. #endif
  30. #ifndef __MIXEDMODE_IDL__
  31. #include <MixedMode.idl>
  32. #endif
  33.  
  34. #ifdef __SOMIDL__
  35.  
  36. #if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
  37. /*
  38.                         * * *  N O T E  * * *
  39.  
  40.     This file has been updated to include Sound Manager 3.2 interfaces.
  41.  
  42.     Some of the Sound Manager 3.0 interfaces were not put into the InterfaceLib
  43.     that originally shipped with the PowerMacs. These missing functions and the
  44.     new 3.2 interfaces have been released in the SoundLib library for PowerPC
  45.     developers to link with. The runtime library for these functions are
  46.     installed by Sound Manager 3.2. The following functions are found in SoundLib.
  47.  
  48.         GetCompressionInfo(), GetSoundPreference(), SetSoundPreference(),
  49.         UnsignedFixedMulDiv(), SndGetInfo(), SndSetInfo(), GetSoundOutputInfo(),
  50.         SetSoundOutputInfo(), GetCompressionName(), SoundConverterOpen(),
  51.         SoundConverterClose(), SoundConverterGetBufferSizes(), SoundConverterBeginConversion(),
  52.         SoundConverterConvertBuffer(), SoundConverterEndConversion()
  53. */
  54. /*
  55.     Interfaces for Sound Driver, !!! OBSOLETE and NOT SUPPORTED !!!
  56.  
  57.     These items are no longer defined, but appear here so that someone
  58.     searching the interfaces might find them. If you are using one of these
  59.     items, you must change your code to support the Sound Manager.
  60.  
  61.         swMode, ftMode, ffMode
  62.         FreeWave, FFSynthRec, Tone, SWSynthRec, Wave, FTSoundRec
  63.         SndCompletionProcPtr
  64.         StartSound, StopSound, SoundDone
  65. */
  66. /*channel initialization parameters*/
  67. #if OLDROUTINENAMES
  68. #endif
  69. /*unsigned fixed-point number*/
  70. typedef unsigned long            UnsignedFixed;
  71.  
  72. typedef SOMLargeStruct            SndCommand;                    /* Derived from a struct of 8 bytes in size */
  73.  
  74.  
  75.  
  76. typedef OpaquePtr                SndChannelPtr;                /* Substituted OpaquePtr for ``SndChannel*'' */
  77.  
  78. typedef OpaquePtr SndCallBackProcPtr;
  79. typedef OpaquePtr SndCallBackUPP;
  80. typedef SOMLargeStruct            SndChannel;                    /* Derived from a struct of 1060 bytes in size */
  81.  
  82. /*MACE structures*/
  83. typedef SOMLargeStruct            StateBlock;                    /* Derived from a struct of 128 bytes in size */
  84.  
  85. typedef OpaquePtr                StateBlockPtr;                /* Substituted OpaquePtr for ``StateBlock*'' */
  86.  
  87. typedef SOMLargeStruct            LeftOverBlock;                /* Derived from a struct of 36 bytes in size */
  88.  
  89. typedef OpaquePtr                LeftOverBlockPtr;            /* Substituted OpaquePtr for ``LeftOverBlock*'' */
  90.  
  91. typedef SOMLargeStruct            ModRef;                        /* Derived from a struct of 6 bytes in size */
  92.  
  93. typedef SOMLargeStruct            SndListResource;            /* Derived from a struct of 21 bytes in size */
  94.  
  95. typedef OpaquePtr                SndListPtr;                    /* Substituted OpaquePtr for ``SndListResource*'' */
  96.  
  97. typedef OpaquePtr                SndListHndl;                /* Substituted OpaquePtr for ``SndListPtr*'' */
  98.  
  99. typedef OpaquePtr                SndListHandle;                /* Substituted OpaquePtr for ``SndListPtr*'' */
  100.  
  101. /*HyperCard sound resource format*/
  102. typedef SOMLargeStruct            Snd2ListResource;            /* Derived from a struct of 15 bytes in size */
  103.  
  104. typedef OpaquePtr                Snd2ListPtr;                /* Substituted OpaquePtr for ``Snd2ListResource*'' */
  105.  
  106. typedef OpaquePtr                Snd2ListHndl;                /* Substituted OpaquePtr for ``Snd2ListPtr*'' */
  107.  
  108. typedef OpaquePtr                Snd2ListHandle;                /* Substituted OpaquePtr for ``Snd2ListPtr*'' */
  109.  
  110. typedef SOMLargeStruct            SoundHeader;                /* Derived from a struct of 23 bytes in size */
  111.  
  112. typedef OpaquePtr                SoundHeaderPtr;                /* Substituted OpaquePtr for ``SoundHeader*'' */
  113.  
  114. typedef SOMLargeStruct            CmpSoundHeader;                /* Derived from a struct of 65 bytes in size */
  115.  
  116. typedef OpaquePtr                CmpSoundHeaderPtr;            /* Substituted OpaquePtr for ``CmpSoundHeader*'' */
  117.  
  118. typedef SOMLargeStruct            ExtSoundHeader;                /* Derived from a struct of 65 bytes in size */
  119.  
  120. typedef OpaquePtr                ExtSoundHeaderPtr;            /* Substituted OpaquePtr for ``ExtSoundHeader*'' */
  121.  
  122. typedef SOMLargeStruct            ConversionBlock;            /* Derived from a struct of 12 bytes in size */
  123.  
  124. typedef OpaquePtr                ConversionBlockPtr;            /* Substituted OpaquePtr for ``ConversionBlock*'' */
  125.  
  126. typedef SOMLargeStruct            SMStatus;                    /* Derived from a struct of 6 bytes in size */
  127.  
  128. typedef OpaquePtr                SMStatusPtr;                /* Substituted OpaquePtr for ``SMStatus*'' */
  129.  
  130. typedef SOMLargeStruct            SCStatus;                    /* Derived from a struct of 24 bytes in size */
  131.  
  132. typedef OpaquePtr                SCStatusPtr;                /* Substituted OpaquePtr for ``SCStatus*'' */
  133.  
  134. typedef SOMLargeStruct            AudioSelection;                /* Derived from a struct of 12 bytes in size */
  135.  
  136. typedef OpaquePtr FilePlayCompletionProcPtr;
  137. typedef OpaquePtr FilePlayCompletionUPP;
  138. typedef OpaquePtr                AudioSelectionPtr;            /* Substituted OpaquePtr for ``AudioSelection*'' */
  139.  
  140. typedef SOMLargeStruct            SndDoubleBuffer;            /* Derived from a struct of 17 bytes in size */
  141.  
  142. typedef OpaquePtr                SndDoubleBufferPtr;            /* Substituted OpaquePtr for ``SndDoubleBuffer*'' */
  143.  
  144. typedef OpaquePtr SndDoubleBackProcPtr;
  145. typedef OpaquePtr SndDoubleBackUPP;
  146. typedef SOMLargeStruct            SndDoubleBufferHeader;        /* Derived from a struct of 24 bytes in size */
  147.  
  148. typedef OpaquePtr                SndDoubleBufferHeaderPtr;    /* Substituted OpaquePtr for ``SndDoubleBufferHeader*'' */
  149.  
  150. typedef SOMLargeStruct            SndDoubleBufferHeader2;        /* Derived from a struct of 28 bytes in size */
  151.  
  152. typedef OpaquePtr                SndDoubleBufferHeader2Ptr;    /* Substituted OpaquePtr for ``SndDoubleBufferHeader2*'' */
  153.  
  154. typedef SOMLargeStruct            SoundInfoList;                /* Derived from a struct of 6 bytes in size */
  155.  
  156. typedef OpaquePtr                SoundInfoListPtr;            /* Substituted OpaquePtr for ``SoundInfoList*'' */
  157.  
  158. typedef SOMLargeStruct            SoundComponentData;            /* Derived from a struct of 28 bytes in size */
  159.  
  160. typedef OpaquePtr                SoundComponentDataPtr;        /* Substituted OpaquePtr for ``SoundComponentData*'' */
  161.  
  162. typedef SOMLargeStruct            CompressionInfo;            /* Derived from a struct of 20 bytes in size */
  163.  
  164. typedef OpaquePtr                CompressionInfoPtr;            /* Substituted OpaquePtr for ``CompressionInfo*'' */
  165.  
  166. typedef OpaquePtr                CompressionInfoHandle;        /* Substituted OpaquePtr for ``CompressionInfoPtr*'' */
  167.  
  168. /*private thing to use as a reference to a Sound Converter*/
  169. typedef OpaquePtr                SoundConverter;
  170.  
  171. #if FOR_SYSTEM7_ONLY
  172. /*
  173.  These two routines for Get/SetSoundVol should no longer be used.
  174.  They were for old Apple Sound Chip machines, and do not support the DSP or PowerMacs.
  175.  Use Get/SetDefaultOutputVolume instead, if you must change the user's machine.
  176. */
  177. #if OLDROUTINENAMES && !GENERATINGCFM
  178. #endif
  179. #endif
  180. #if OLDROUTINENAMES
  181. #endif
  182. /* Sound Manager 2.0 and later, uses _SoundDispatch */
  183. /* MACE compression routines */
  184. /* Sound Manager 3.0 and later calls */
  185. /* Sound Manager 3.1 and later calls */
  186. /* Sound Manager 3.2 and later calls */
  187. #endif
  188.  
  189. #endif /* __SOMIDL__ */
  190.  
  191. #endif /* __SOUND_IDL__ */
  192.  
  193.